In order to improve the error resilience capability of a video bitstream in video communication, a coder usually uses error resilience coding tools in coding process to reduce mutual influence between a current coding unit and coded units, so that when a device receives a corrupted bitstream of a certain coding unit, it can still conceal the error using existing data with a high possibility, and reduce the negative influence on decoding the subsequent coding units to as a low degree as possible.
At present, a method of dividing a picture into one or more slices is adopted into High-Efficiency Video Coding (HEVC) standard to meet the limitation of a network transmission unit on maximum payload size. Meanwhile, the boundaries of the slices “break” the mutual prediction relationships among the spatial adjacent blocks in a picture, which improves the error resilience performance of bitstream of a coded picture with the cost of lowering coding efficiency.
In order to get a proper tradeoff between error resilience performance and coding efficiency, Constrained Loop Filter (CLF) mode is used to limit whether the pixels locating outside the boundaries of the current slice are allowed to be used by Loop Filter (LF) processing the pixels in the current slice or not. In HEVC, a flag bit loop_filter_across_slice_flag in Sequence Parameter Set (SPS) is used to indicate whether the LF crosses the boundaries of slices in sequence coding process. The LF may include Deblocking Filter (DF), Sample Adaptive Offset (SAO) filter, Adaptive Loop Filter (ALF) and the like.
A coder usually inhibits error propagation among pictures by utilizing a method of local refreshing a picture by introducing intra blocks. This process may employ Constrained Intra Prediction (CIP) mode to further control whether the pixels from the adjacent inter coded blocks that may be corrupted by error propagation will be employed as reference pixels for coding an intra refreshing block. In HEVC, a flag bit constraint_intra_pred_flag in Picture Parameter Set (PPS) is used to indicate whether CIP mode is used in coding a picture.
The existing method mainly has the following limitations.
1: Before encoding a video sequence, a coder may determine whether LF is allowed to cross slice boundaries or not according to network transmission state (such as congestion, bit error rate of a wireless channel, packet loss rate of a wired network and so on) acquired from the system, and set the flag bit loop_filter_across_slice_flag in SPS. If the network transmission state changes during the process of coding this video sequence, the coder cannot flexibly change the coding strategy of whether the LF crosses the slice boundaries or not. If taking a conservative strategy of always setting loop_filter_across_slice_flag equal to 0 (that is, the LF is not allowed to cross the slice boundaries), the coder cannot fully utilize LF to improve coding efficiency when the network is of good transmission state.
2: In existing HEVC, the coder may reinitialize the SPS to change parameter settings only by inserting an Instantaneous Decoding Refresh (IDR) picture so as to get a tradeoff between error resilience performance and coding efficiency. However, the newly inserted IDR picture and its subsequent coded pictures may always lead to a sudden and significant increment of coding bit rate, which further poses heavy pressure on network transmission.
3: The coder may use PPS to control the coding process of one picture or multiple pictures in a time period, but cannot separately control the slices in a picture. When it is determined according to the feedback information that different slices are influenced by the temporal error propagation to different extents, different coding control strategies of inserting intra refreshing blocks cannot be applied to different slices in the picture.
4: Different degrees of local influence brought by temporal error propagation would be imposed on decoded picture according to different characteristics of picture contents in the slices. Therefore, even under the condition that the blocks in a picture coded using inter prediction suffer from temporal error propagation with its influence (e.g. reconstruction error) of the same or similar degree, the coder using the existing approaches in HEVC cannot conduct separate control operations to the slices in the picture to pursue a better tradeoff between coding efficiency and error resilience performance.
In view of the abovementioned limitations in the existing technology, a better tradeoff between coding efficiency and error resilience performance cannot be achieved by the existing coding and decoding methods.